package com.triones.api.service.interlace;

import com.triones.api.entity.bo.EmailBO;
import com.triones.api.entity.bo.LoginBO;
import com.triones.api.entity.bo.MemberBO;
import com.triones.api.entity.bo.MemberInfoBO;
import com.triones.api.entity.interlace.dto.InterlaceMemberDO;
import com.triones.api.entity.interlace.vo.InterlaceMemberVO;

/**
 * interlace 注册登录
 */
public interface InterlaceLoginService {

    /**
     * 注册（新卡商）
     * @param bo
     * @return
     */
    boolean InterlaceRegister(MemberBO bo);

    /**
     * 登录（新卡商）
     * @param bo
     * @return
     */
    String interlaceLogin(LoginBO bo);

    /**
     * 校验邮箱唯一性和合规性
     * @param email
     * @return
     */
    boolean checkEmailUnique(String email);

    /**
     * 获取用户基本信息
     * @return
     */
    InterlaceMemberVO getMemberInfo();

    /**
     * 编辑用户信息
     * @param dto
     * @return
     */
    boolean editMember(InterlaceMemberDO dto);

    /**
     * 设备绑定
     * @param deviceId
     * @return
     */
    boolean device(String deviceId);

    /**
     * 语言绑定
     * @param language
     * @return
     */
    boolean language(String language);

    /**
     * 邮箱验证码校验
     * @param bo
     * @return
     */
    Boolean emailCheck(EmailBO bo);
}
